<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="./vue.js"></script>
</head>

<body>
    <div id="app">
        <h1>{{count}}</h1>
        <button @click="add">点击增加</button>
    </div>
</body>
<script>
    const app = {
        // 该函数会在创建 Vue 实例之前被调用
        beforeCreate() {
            console.log(this);
            //  count 不是在 data 中声明的
            this.count = 100
        },
        data() {
            // 写在 data 中的数据是具备响应式的数据，不是在 data 中
            // 定义的数据将不会具备响应式
            return {

            }
        },
        methods: {
            add() {
                this.count++

                // 当数据发生改变的时候，视图不会更新，可能的原因是什么？
                // 首先要查看数据是否具备响应式，看数据是不是在 data 中声明的
                // console.log(this.count);


                // 该方法用来强制渲染组件
                this.$forceUpdate()

            }
        },
    }
    Vue.createApp(app).mount('#app')
</script>

</html>